package com.link.base.base.mpconfig.service;


import com.link.base.base.coupons.model.Coupons;
import com.link.base.base.mpconfig.model.HomePopUp;
import com.link.core.basic.service.BasicService;

import java.util.List;

/**
 * 小程序首页弹框配置
 *
 * @author: 闫有霞
 * @date: 2019/12/19
 */
public interface HomePopUpService extends BasicService<HomePopUp> {
    /**
     * <p>根据appId查询</p>
     * @author yanyouxia
     * @param homePopUp
     */
    public List<HomePopUp> queryByAppId(HomePopUp homePopUp) throws Exception;

    /**
     * <p>根据客户ID accntId 以及 活动 ID linkId 判断
     *    该客户是否参加过该活动  参加过返回活动 ID
     *    及客户ID</p>
     * @author yanyouxia
     * @param homePopUp
     */
    public List<HomePopUp> checkAccntActivity(HomePopUp homePopUp) throws Exception;

    /**
     * <p>根据linkId查询 优惠券</p>
     * @author yanyouxia
     * @param homePopUp
     */
    public List<Coupons> getActivityCoupon(HomePopUp homePopUp) throws Exception;


    /**
     * <p>根据客户ID accntId 以及 活动 ID linkId 判断
     *     该客户是否领取过该活动下的卡券  领取过返回卡券ID
     *     及客户ID</p>
     * @author yanyouxia
     * @param homePopUp
     */
    public List<HomePopUp> checkAccntCoupon(HomePopUp homePopUp) throws Exception;


    /**
     * <p>根据客户ID accntId 以及 活动 ID linkId 判断
     *     该客户的会员ID是否领取过该会员卡  领取过返回会员卡ID
     *     及客户ID</p>
     * @author yanyouxia
     * @param homePopUp
     */
    public List<HomePopUp> checkAccntMember(HomePopUp homePopUp) throws Exception;

    /**
     * <p>根据accntId查询 最新的待通知的优惠券</p>
     * @author yanyouxia
     * @param homePopUp
     */
    public List<Coupons> getAccntCoupon(HomePopUp homePopUp) throws Exception;

    /**
     *@createdBy 闫有霞
     *@date 2018/12/1
     *@methods: updateStatus
     *@param: homePopUp
     *@return: void
     *@description: 更新弹框状态是否有效
     **/

    public void  updateStatus(HomePopUp homePopUp) throws Exception;

}
